/*
 *  StudentAIControllerExample.h
 *  Pirates!
 *
 *  Created by Alan Dorin on 14/03/11.
 *  Copyright 2011 __MyCompanyName__. All rights reserved.
 *
 */

#ifndef _STUDENT_AI_H_
#define _STUDENT_AI_H_

#include "AIController.h"

class StudentAIControllerExample : public AIController
{
	private:
		Globals::ShipAction myLastAction;	// a (suggested) variable to keep track of the last action this ship made
		
	public:
	// The methods below are explained in some detail in the .cpp file
	
	// This is the most important method... you *must* write it and within it, include 
	// instructions on how to navigate your ship, when to collect gold and shoot the cannon etc.
	Globals::ShipAction computeNextAction(void);
	
	// These methods are just examples for you to try out as computations made by computeNextAction()
	Globals::ShipAction straightAheadAction(void);
	Globals::ShipAction randomAction(void);
	Globals::ShipAction avoidRocksAndShootAction(void);
	
	// Here are a couple of (suggested) helper routines for you to use to keep track of the last action your ship made
	void setMyLastAction(Globals::ShipAction action);
	Globals::ShipAction getMyLastAction(void);

};

#endif